package com.linkoog.devtools.code_generator.database.dao;

import com.linkoog.devtools.code_generator.database.domain.ColumnInfo;
import com.linkoog.devtools.code_generator.database.domain.DatabaseInfo;
import com.linkoog.devtools.code_generator.database.domain.TableInfo;

import java.sql.Connection;
import java.util.List;

public interface DatabaseDao {

    Connection getConnection();

    Connection getConnection(String database);

    boolean validConnection();

    void closeConnection(Connection conn);

    List<DatabaseInfo> getDatabaseInfoList();

    List<String> getSchemaList(String database);

    List<TableInfo> getTableInfoList(String database, String schema);

    List<ColumnInfo> getColumnInfoList(String database, String schema, String table);

}
